package com.terabits.smartriver.service;

import com.terabits.smartriver.meta.po.Project;
import com.terabits.smartriver.meta.po.ProjectMaterial;
import com.terabits.smartriver.meta.po.ProjectTask;
import com.terabits.smartriver.util.PageData;

import java.util.List;

/**
 * Created by Yin on 2019/3/13
 */
public interface ProjectService {

    /**
     * 查找 项目
     *
     * @return
     */
    List<PageData> getProject(PageData pd);

    /**
     * 添加 项目
     *
     * @param project
     * @return
     */
    int addProject(Project project);

    /**
     * 修改 项目
     *
     * @param project
     * @return
     */
    int updateProject(Project project);

    /**
     * 删除项目
     *
     * @param id
     * @return
     */
    int deleteProject(Integer id);

    /**
     * 查看 项目资料
     *
     * @param projectMaterial
     * @return
     */
    List<ProjectMaterial> getProjectMaterial(ProjectMaterial projectMaterial);

    /**
     * 查看 项目资料
     *
     * @param projectMaterial
     * @return
     */
    Integer deleteProjectMaterial(ProjectMaterial projectMaterial);


    /**
     * 添加 项目资料
     *
     * @param projectMaterial
     * @return
     */
    int addProjectMaterial(ProjectMaterial projectMaterial);


    /**
     * 查看项目进度
     *
     * @return
     */
    List<PageData> getProjectSchedule(PageData pageData);

    /**
     * 查看 任务
     *
     * @return
     */
    List<PageData> getProjectTask(PageData pageData);

    /**
     * 创建 任务
     *
     * @param projectTask
     * @return
     */
    int addProjectTask(ProjectTask projectTask);

    /**
     * 修改 任务
     *
     * @param projectTask
     * @return
     */
    int updateProjectTask(ProjectTask projectTask);

    /**
     * 查看 项目验收页面
     *
     * @return
     */
    List<PageData> getProjectAcceptance(PageData pageData);

}
